package cloud.seri.iot.common.api

import com.aliyuncs.iot.model.v20180120.DeleteDeviceResponse
import com.aliyuncs.iot.model.v20180120.QueryDevicePropResponse
import com.aliyuncs.iot.model.v20180120.SaveDevicePropResponse


interface DeviceTagsManager
{
    /**
     * 查询指定设备的标签列表
     *
     * @param ProductKey 设备所隶属的产品Key  必须
     * @param DeviceName 设备名称            必须
     *
     * @Des 描述：
     */
    fun queryDeviceProp(ProductKey: String, DeviceName: String): QueryDevicePropResponse?

    /**
     * 为指定设备设置标签
     *
     * @param ProductKey 设备所隶属的产品Key  必须
     * @param DeviceName 设备名称            必须
     * @param Props 设置的设备标签            必须
     *
     * @Des 描述：
     */
    fun saveDeviceProp(ProductKey: String, DeviceName: String, Props: String): SaveDevicePropResponse?


    /**
     * 删除设备下的指定标签
     *
     * @param ProductKey 设备所隶属的产品Key  必须
     * @param DeviceName 设备名称            必须
     * @param PropKey 设备标签键值            必须
     *
     * @Des 描述：
     */
    fun deleteDeviceProp(ProductKey: String, DeviceName: String, PropKey: String): DeleteDeviceResponse?
}
